package com.th.supcom.pds.domain.pojo;

import java.util.Date;

import net.carefx.framework.translate.Translatable;
import net.carefx.framework.translate.annotation.TranslateField;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * InpPhamApplyMaster Pojo对象.
 * 
 * 住院摆药请领单.
 */
public class InpPhamApplyMaster implements java.io.Serializable, Translatable
{
    private static final long serialVersionUID = 1L;

    /** 主键. */
    private Long m_inpPhamApplyMasterId;

    /** 请领单据号. */
    private String m_applyNo;

    /** 请领护理单元. */
    @TranslateField (translatorName = "organizationTranslator", targetFieldName = "m_nurseUnitName")
    private String m_nurseUnit;
    private String m_nurseUnitName;

    /** 请领人. */
    @TranslateField (translatorName = "empNameTranslator", targetFieldName = "m_applyByName")
    private String m_applyBy;
    private String m_applyByName;

    /** 请领时间. */
    private Date m_applyDatetime;

    /** 摆药截止日期. */
    private Date m_endDispenseDate;

    /** 是否强制摆药. */
    private String m_defaultMandatoryFlag;
    /** 是否作废0-正常1-作废. */
    private Integer m_isCancel;

    /**
     * 默认构造器 .
     */
    public InpPhamApplyMaster ()
    {
    }

    /**
     * 获取是否强制摆药属性.
     * 
     */
    public String getDefaultMandatoryFlag ()
    {
        return m_defaultMandatoryFlag;
    }

    /**
     * 设置是否强制摆药属性.
     * 
     * @param defaultMandatoryFlag.
     */
    public void setDefaultMandatoryFlag (String defaultMandatoryFlag)
    {
        m_defaultMandatoryFlag = defaultMandatoryFlag;
    }

    /**
     * 获取主键属性.
     * 
     */
    public Long getInpPhamApplyMasterId ()
    {
        return m_inpPhamApplyMasterId;
    }

    /**
     * 设置主键属性.
     * 
     * @param inpPhamApplyMasterId.
     */
    public void setInpPhamApplyMasterId (Long inpPhamApplyMasterId)
    {
        m_inpPhamApplyMasterId = inpPhamApplyMasterId;
    }

    /**
     * 获取请领单据号属性.
     * 
     */
    public String getApplyNo ()
    {
        return m_applyNo;
    }

    /**
     * 设置请领单据号属性.
     * 
     * @param applyNo.
     */
    public void setApplyNo (String applyNo)
    {
        m_applyNo = applyNo;
    }

    /**
     * 获取请领护理单元属性.
     * 
     */
    public String getNurseUnit ()
    {
        return m_nurseUnit;
    }

    /**
     * 设置请领护理单元属性.
     * 
     * @param nurseUnit.
     */
    public void setNurseUnit (String nurseUnit)
    {
        m_nurseUnit = nurseUnit;
    }

    /**
     * 获取请领人属性.
     * 
     */
    public String getApplyBy ()
    {
        return m_applyBy;
    }

    /**
     * 设置请领人属性.
     * 
     * @param applyBy.
     */
    public void setApplyBy (String applyBy)
    {
        m_applyBy = applyBy;
    }

    /**
     * 获取请领时间属性.
     * 
     */
    public Date getApplyDatetime ()
    {
        if (m_applyDatetime == null)
        {
            return null;
        }
        return (Date) m_applyDatetime.clone ();

    }

    /**
     * 设置请领时间属性.
     * 
     * @param applyDatetime.
     */
    public void setApplyDatetime (Date applyDatetime)
    {
        if (applyDatetime == null)
        {
            m_applyDatetime = null;
        }
        else
        {
            m_applyDatetime = (Date) applyDatetime.clone ();
        }

    }

    /**
     * 获取摆药截止日期属性.
     * 
     */
    public Date getEndDispenseDate ()
    {
        if (m_endDispenseDate == null)
        {
            return null;
        }
        return (Date) m_endDispenseDate.clone ();

    }

    /**
     * 设置摆药截止日期属性.
     * 
     * @param endDispenseDate.
     */
    public void setEndDispenseDate (Date endDispenseDate)
    {
        if (endDispenseDate == null)
        {
            m_endDispenseDate = null;
        }
        else
        {
            m_endDispenseDate = (Date) endDispenseDate.clone ();
        }

    }

    /**
     * 获取是否作废0-正常1-作废属性.
     * 
     */
    public Integer getIsCancel ()
    {
        return m_isCancel;
    }

    /**
     * 设置是否作废0-正常1-作废属性.
     * 
     * @param isCancel.
     */
    public void setIsCancel (Integer isCancel)
    {
        m_isCancel = isCancel;
    }

    /**
     * 打印字符串.
     * 
     * @return 打印.
     */
    public String toString ()
    {
        StringBuffer sb = new StringBuffer ();
        sb.append ("---------------------------------- start ----------------------------------\n");
        sb.append ("inpPhamApplyMasterId:" + m_inpPhamApplyMasterId + " applyNo:" + m_applyNo + " nurseUnit:" + m_nurseUnit
                   + "\n");
        sb.append ("applyBy:" + m_applyBy + " applyDatetime:" + m_applyDatetime + " endDispenseDate:" + m_endDispenseDate + "\n");
        sb.append ("defaultMandatoryFlag:" + m_defaultMandatoryFlag + " isCancel:" + m_isCancel + "\n");

        sb.append ("----------------------------------  end  ----------------------------------\n");
        return sb.toString ();
    }

    public String getNurseUnitName ()
    {
        return m_nurseUnitName;
    }

    public void setNurseUnitName (String nurseUnitName)
    {
        m_nurseUnitName = nurseUnitName;
    }

    public String getApplyByName ()
    {
        return m_applyByName;
    }

    public void setApplyByName (String applyByName)
    {
        m_applyByName = applyByName;
    }

    /** 日志记录器. */
    public static final Logger s_logger = LoggerFactory.getLogger (InpPhamApplyMaster.class);

    /** 公司版权信息. */
    public static final String copyright = "Copyright 2014, TH Supcom Corporation";

    /** 提交路径. */
    public static final String SCC_BRANCH = "$URL$";

    /** 提交日期. */
    public static final String SCC_LAST_MODIFICATION_DATE = "$Date$";

    /** 最终修改人员. */
    public static final String SCC_LAST_MODIFIER_NAME = "$Author$";

    /** 最终版本号. */
    public static final String SCC_REVISION = "$Revision$";

}